package manejoArchivos;

import juego.Juego;
import jugadores.Jugador;

import org.xml.sax.Attributes;
import org.xml.sax.SAXException;
import org.xml.sax.helpers.DefaultHandler;

import civilizacion.Civilizacion;

public class ManejadorJugadores extends DefaultHandler{
	
	
	private Jugador jugadorActual; 	// jugador que  esta cargando
	private Civilizacion cvlActual; // civilizacion que esta cargando
	private String  valor;  		// valor que esta siendo leido
	private Juego juego;			// 
	
	public ManejadorJugadores(Juego nuevoJuego)
	{
		juego = nuevoJuego;
	}
	public void startElement( String namespaceURI, String localName,
			String qName, Attributes attr ) throws SAXException
	{
		if (localName.equals("jugador"))  // me  fijo si empieza con jugador
		{
			jugadorActual = new Jugador("",null); // creo jugador 
			juego.AgregarJugador(jugadorActual);  // agrego jugador al juego
		}
		if (localName.equals("civilizacion"))
		{
			cvlActual = new Civilizacion("",juego.getMapa() );
			jugadorActual.setCivilizacion(cvlActual);
			
		}
			
	}
	
	public void endElement (String namespaceURI, String localName, String rawName)
	throws SAXException
	{
		// Segun la propiedad leida, asigno el valor adecuado 
		if (localName.equals("nombre"))
			jugadorActual.setNombre(valor);
		if (localName.equals("nombreCvl"))
			cvlActual.setNombre(valor);
		
			
	}
	
	public void characters (char[] ch, int start, int end) throws
	SAXException {
		//Leo el valor del archivo y quito espacios en blanco
		valor = new String (ch, start, end);
		valor = valor.trim();
	}

}
